package com.sunyur.tailor.channel.service.inner.contract.service;

import com.sunyur.tailor.channel.common.middle.base.ChannelListResult;
import com.sunyur.tailor.channel.common.middle.base.ChannelResult;
import com.sunyur.tailor.channel.service.inner.contract.model.ContractInfoModel;
import com.sunyur.tailor.channel.service.inner.contract.model.ContractPaymentStageModel;
import com.sunyur.tailor.channel.service.inner.contract.param.ContractInfoParam;
import com.sunyur.tailor.channel.service.inner.contract.param.CreateContractParam;
import com.sunyur.tailor.channel.service.inner.contract.param.GetContractInfoParam;

import java.util.List;

/**
 * @Author: HuBaoding
 * @Description:
 * @Date: Created in 11:01 2021/9/7
 */
public interface ContractService {

    /**
     * 合同台账批量同步接口
     * @param param
     * @return
     */
    ChannelResult<Boolean> createBatchContract(List<CreateContractParam> param);

    /**
     * @desc 根据合同号 批量查询合同付款条款
     * @author shen
     * @date 2021/10/12 14:37
     * @paramer param
     */
    ChannelListResult<ContractPaymentStageModel> listPaymentStageByContractCodes(GetContractInfoParam param);


    /**
     * 16-合同-详情接口
     * @param param
     * @return
     * @Wiki http://doc.sunyur.com/pages/viewpage.action?pageId=388137154
     */
    ChannelListResult<ContractInfoModel> listContract(ContractInfoParam param);

}
